-- CALC_IRON_CHEST_BONUS

-- 铁柜奖励
return function(user, bonusArg)
    -- 55%概率：随机普通元件×1
    -- 20%概率：探索点×50
    -- 10%概率：随机机械杂物（电气陀螺、金属鱼骨、喷火龙玩具）×1
    -- 7%概率：随机机械杂物（发条老鼠、发条蜘蛛、机械眼球）×1
    -- 4%概率：古代元件×1
    -- 4%概率：随机科学杂志（航天与航空、电气周刊、工业时代）×1


    local bonus = {};
    local seed = DungeonM.getRandSeed("CALC_IRON_CHEST_BONUS") % 100;
    local rand = DungeonM.getRandSeed("CALC_IRON_CHEST_BONUS");

    if seed < 55 then
        local arr = { 7519, 7520, 7521, };
        local classId = arr[rand % sizeof(arr) + 1];

        table.insert(bonus, { 1, classId, 1, });

    elseif seed < 75 then
        table.insert(bonus, {2, "search_point", 50});

    elseif seed < 85 then
        -- 12%概率：随机机械杂物（电气陀螺、金属鱼骨、喷火龙玩具）×1
        local arr = { 7567, 7568, 7569, };
        local classId = arr[rand % sizeof(arr) + 1];

        table.insert(bonus, { 1, classId, 1, });

    elseif seed < 92 then
        -- 8%概率：随机机械杂物（发条老鼠、发条蜘蛛、机械眼球）×1
        local arr = { 7564, 7565, 7566, };
        local classId = arr[rand % sizeof(arr) + 1];

        table.insert(bonus, { 1, classId, 1, });
    elseif seed < 96 then
        -- 5%概率：古代元件×1
        table.insert(bonus, { 1, 7522, 1, });
    else
        -- 5%概率：随机科学杂志（航天与航空、电气周刊、工业时代）×1
        local arr = { 7571, 7572, 7573, };
        local classId = arr[rand % sizeof(arr) + 1];

        table.insert(bonus, { 1, classId, 1, });
    end

    -- 未来猫任务已经领取了
    local prop = PropM.combine(user, "doraemon", "mission");
    if prop[3] > 0 and rand % 100 < 4 then
        if not DungeonServiceM.isStatItemLimit(7575) then
            table.insert(bonus, { 1, 7575, 1 });
        end
        if not DungeonServiceM.isStatItemLimit(7576) then
            table.insert(bonus, { 1, 7576, 1 });
        end
    end

    return bonus;
end
